package com.itheima.pool;

import java.util.concurrent.locks.ReentrantLock;

/*
使用锁来解决线程安全问题

 */
public class Ticket implements Runnable {
    private int count=100;
    private ReentrantLock lock= new ReentrantLock();
    @Override
    public void run() {
        while(true){
            //加锁
            try {
                lock.lock();
                if(count<=0){
                    break;
                }else {
                    try {
                        Thread.sleep(100);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    count--;
                    System.out.println(Thread.currentThread().getName()+"正在卖票,还剩"+count);
                }
            } finally {
                lock.unlock();
            }
            //释放锁

        }
    }
}
